Análisis Complejidad Electoral 2019: Municipios

Resumen de resultados y Mapas


INFOTEC-Maestría en Ciencia de Datos e Información

Autor: Miguel David Alvarez Hernández (mdalvarezh@gmail.com)

In [1]:
import datetime
now = datetime.datetime.now()
print ("Última versión:")
print (now.strftime("%Y-%m-%d %H:%M:%S"))
Última versión:
2020-07-28 17:29:02

Setup

In [2]:
import pandas as pd  
import numpy as np
import pandas_profiling
from itertools import combinations 
from dateutil.parser import parse 
import matplotlib as mpl
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
import seaborn as sns
import plotly.express as px

Importación de resultados

In [3]:
#se carga el dataframe con los resultados de 8 indicadores (todos los PCA considerados en k-medias):
resultados_ind8 = pd.read_csv("C:/Users/miguel.alvarez/Google Drive/INFOTEC/Proyecto/Code-Data/Mun/3_Agrupamiento-Kmeans/Resultados_Mun_Indic_PCA_Kmeans_Atip_ind8.csv", dtype={'EDO':int,'MUN':int})

#se carga el dataframe con los resultados de 8 indicadores, con log en LNE y Densidad_LNE (todos los PCA considerados en k-medias):
resultados_ind8_tf = pd.read_csv("C:/Users/miguel.alvarez/Google Drive/INFOTEC/Proyecto/Code-Data/Mun/3_Agrupamiento-Kmeans/Resultados_Mun_Indic_PCA_Kmeans_Atip_ind8_tf.csv", dtype={'EDO':int,'MUN':int})
#se aplica np.exp rn LNE y Densidad_LNE para volver a las magnitudes originales
resultados_ind8_tf['log(LNE)'] = np.exp(resultados_ind8_tf['log(LNE)'])
resultados_ind8_tf['log(Densidad_LNE)'] = np.exp(resultados_ind8_tf['log(Densidad_LNE)'])

#renombramos algunas columnas
resultados_ind8_tf=resultados_ind8_tf.rename(columns={"log(LNE)": "LNE", "log(Densidad_LNE)": "Densidad_LNE"})
resultados_ind8_tf
Out[3]:
EDO NOMBRE_ESTADO MUN NOMBRE_MUNICIPIO NUM_SECC_RUR LNE Densidad_LNE Razon_LNE_PE TC_LNE_2019 Coef_Var_LNE ... CP1 (ICE principal) CP2 (segundo ICE) CP3 (tercer ICE) CP4 CP5 CP6 CP7 CP8 TCE_municipal Atipicidad
0 1 AGUASCALIENTES 10 SAN FRANCISCO DE LOS ROMO 3 34917.0 3566.024547 0.989272 0.037498 0.015085 ... -1.123957 0.770085 0.164774 -0.915654 -0.492972 -0.317918 -0.188139 0.012307 G0 Tipica
1 1 AGUASCALIENTES 8 SAN JOSE DE GRACIA 4 6914.0 2133.223463 0.991803 0.000289 0.008345 ... -3.456425 -0.735941 1.007405 -0.562512 -0.936801 0.185125 -1.159336 0.032465 G1 Tipica
2 1 AGUASCALIENTES 9 TEPEZALA 6 15545.0 2478.675412 0.990635 0.005108 0.011777 ... -2.780315 -0.217879 1.125977 -0.520060 -0.949179 -0.029845 -0.828418 0.109442 G1 Tipica
3 1 AGUASCALIENTES 11 EL LLANO 6 15067.0 1505.749552 0.991016 -0.003373 0.012239 ... -2.545177 -0.264797 0.625283 -0.108215 -0.902348 -0.148185 -0.154942 -0.011660 G1 Tipica
4 1 AGUASCALIENTES 2 ASIENTOS 11 34222.0 1484.722551 0.989080 0.001874 0.013432 ... -2.432097 -0.075186 1.405509 0.187352 -0.990950 -0.483391 -0.528715 -0.007322 G1 Tipica
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
2451 32 ZACATECAS 45 TEPECHITLAN 13 6959.0 515.205401 0.983523 0.066677 0.019408 ... 0.208244 -0.355269 -0.474706 1.141162 0.719067 -0.406781 0.034851 0.060747 G2 Tipica
2452 32 ZACATECAS 14 GENERAL FRANCISCO R. MURGUIA 32 17372.0 1014.159112 0.986450 0.082705 0.022769 ... 0.741788 1.244269 0.149342 1.906565 0.497395 0.335199 -0.281648 0.031614 G0 Tipica
2453 32 ZACATECAS 44 TABASCO 16 12527.0 1453.217492 0.983221 0.100307 0.029823 ... 2.190433 0.411954 0.112989 0.742667 0.050829 0.123076 -0.241525 -0.064545 G2 Tipica
2454 32 ZACATECAS 9 CHALCHIHUITES 10 8222.0 599.837116 0.982861 0.075052 0.021097 ... 0.681040 -0.336669 -0.510570 0.871445 0.621117 -0.507095 0.039586 -0.003077 G2 Tipica
2455 32 ZACATECAS 11 TRINIDAD GARCIA DE LA CADENA 3 2779.0 599.387128 0.972699 0.113381 0.035958 ... 3.580262 -1.780109 0.340235 0.526569 0.719428 -0.483072 -0.099760 -0.038375 G3 Tipica

2456 rows × 22 columns


Resumen de resultados (8 indicadores)

In [4]:
#con pandas_profiling se crea una interface para visualizar un resumen del dataframe de los resultados
resultados_ind8.profile_report()
Out[4]:

In [5]:
#se ordenan y obtienen los 10 municipios por nivel de complejidad (descendente en CP1) 
ranking_mun_top10_ind8 = resultados_ind8.sort_values(by='CP1_(ICE_principal)', ascending=False).head(10)
#se guarda el ranking
ranking_mun_top10_ind8.to_csv(r'Resultados_Mun_ranking-top10_ind8.csv', index = None)
ranking_mun_top10_ind8
Out[5]:
EDO NOMBRE_ESTADO MUN NOMBRE_MUNICIPIO NUM_SECC_RUR LNE Densidad_LNE Razon_LNE_PE TC_LNE_2019 Coef_Var_LNE ... CP1_(ICE_principal) CP2_(segundo_ICE) CP3_(tercer_ICE) CP4 CP5 CP6 CP7 CP8 TCE_municipal Atipicidad
218 8 CHIHUAHUA 66 URUACHI 10 4527.0 71935.167394 0.946017 0.239595 0.072941 ... 12.223289 3.737240 13.266937 -7.047947 8.013700 -2.143934 -1.003567 -0.111748 G0 Atipica en CP1
1355 20 OAXACA 329 SAN PEDRO TIDAA 0 649.0 148.056274 0.969378 0.275049 0.077157 ... 10.542495 -1.833485 0.778401 1.306839 -1.080136 -1.242038 -2.514834 0.512631 G2 Atipica en CP1
1384 20 OAXACA 216 SAN JUAN TABAA 0 831.0 1138.040489 0.935902 0.183761 0.065257 ... 10.066522 -3.856384 3.331882 2.204319 1.037296 3.330189 -0.082833 0.031180 G2 Atipica en CP1
644 14 JALISCO 63 MEZQUITIC 6 13993.0 3166.858601 0.973196 0.197826 0.059857 ... 7.961590 -0.748885 0.764143 0.812900 -0.365640 -0.961641 -0.959423 -0.204727 G2 Atipica en CP1
953 19 NUEVO LEON 10 CARMEN 1 28495.0 2675.641052 0.981918 0.201864 0.059656 ... 7.568605 -0.378582 0.112418 0.268506 -1.163629 -1.896856 -1.167013 -0.212289 G2 Atipica en CP1
1019 20 OAXACA 489 SANTIAGO TEPETLAPA 0 88.0 225.010554 0.965876 0.011494 0.098169 ... 7.153553 -5.432591 4.567985 3.628479 -1.469110 -3.750672 1.257977 2.707669 G2 Atipica en CP1
203 8 CHIHUAHUA 9 BOCOYNA 11 20100.0 2377.196977 0.964964 0.169693 0.052948 ... 7.035109 -1.066891 1.214960 1.391798 0.365791 0.531154 -0.526810 -0.129270 G2 Atipica en CP1
1481 20 OAXACA 396 SANTA MAGDALENA JICOTLAN 0 61.0 37.305746 0.972984 0.033898 0.073513 ... 7.007875 -3.249110 2.247368 2.229497 -1.378789 -2.937922 2.159193 -0.026377 G2 Atipica en CP1
2346 31 YUCATAN 45 KOPOMA 1 1983.0 984.759958 0.976657 0.190276 0.057503 ... 6.944986 -0.992839 0.128227 0.553758 -0.752894 -0.892300 -1.128084 0.307708 G2 Atipica en CP1
263 8 CHIHUAHUA 41 MAGUARICHI 4 1179.0 10214.519198 0.952501 0.126074 0.050196 ... 6.558364 -1.859516 3.562925 0.413499 1.731777 1.711082 0.223410 0.105420 G2 Atipica en CP1

10 rows × 22 columns

In [6]:
#se obtienen los municipios de mayor complejidad (mayor CP1) para cada una de las 32 entidades
idx_rank_mun = resultados_ind8.groupby(['EDO'])['CP1_(ICE_principal)'].transform(max) == resultados_ind8['CP1_(ICE_principal)']
ranking_mun_edo = resultados_ind8[idx_rank_mun]
ranking_mun_edo.to_csv(r'Resultados_Mun_ranking-edo_ind8.csv', index = None)
ranking_mun_edo
Out[6]:
EDO NOMBRE_ESTADO MUN NOMBRE_MUNICIPIO NUM_SECC_RUR LNE Densidad_LNE Razon_LNE_PE TC_LNE_2019 Coef_Var_LNE ... CP1_(ICE_principal) CP2_(segundo_ICE) CP3_(tercer_ICE) CP4 CP5 CP6 CP7 CP8 TCE_municipal Atipicidad
0 1 AGUASCALIENTES 10 SAN FRANCISCO DE LOS ROMO 3 34917.0 3566.024547 0.989272 0.037498 0.015085 ... -1.159709 -0.088926 0.085300 -0.543018 -0.142316 -0.222009 -0.187705 -0.002198 G1 Tipica
13 2 BAJA CALIFORNIA 3 TECATE 3 85233.0 1700.546549 0.988233 -0.012604 0.017671 ... -1.900561 -1.081124 1.090679 0.459520 -0.797659 -0.731897 0.159215 -0.017969 G3 Tipica
20 3 BAJA CALIFORNIA SUR 2 MULEGE 17 40805.0 1116.921614 0.982451 0.078356 0.024389 ... 1.191284 0.423169 -0.322399 0.782022 0.313226 0.363567 0.019266 -0.023786 G2 Tipica
22 4 CAMPECHE 9 ESCARCEGA 15 40540.0 1995.116156 0.983640 0.062954 0.018421 ... 0.157776 0.518896 -0.309286 0.370727 0.436148 0.596251 0.075792 -0.009475 G1 Tipica
49 5 COAHUILA 11 GENERAL CEPEDA 15 9058.0 2395.494757 0.981156 0.150514 0.041165 ... 4.239949 0.263874 -0.189677 0.718010 0.173173 -0.542547 -0.887664 0.151498 G2 Tipica
70 6 COLIMA 2 COMALA 6 16735.0 2823.697865 0.987999 0.092363 0.027588 ... 1.548750 0.332268 -0.529739 -0.323205 -0.195924 -0.539428 -0.222241 0.007057 G2 Tipica
188 7 CHIAPAS 67 PANTEPEC 4 7905.0 8420.363363 0.964301 0.096242 0.037119 ... 4.118489 -1.106393 2.322428 -0.024808 1.242046 1.188320 0.300861 -0.156886 G2 Atipica en CP3
218 8 CHIHUAHUA 66 URUACHI 10 4527.0 71935.167394 0.946017 0.239595 0.072941 ... 12.223289 3.737240 13.266937 -7.047947 8.013700 -2.143934 -1.003567 -0.111748 G0 Atipica en CP1
267 9 CIUDAD DE MEXICO 9 MILPA ALTA 0 107273.0 2559.563059 0.989102 0.060115 0.018995 ... -0.019825 0.528136 -0.297322 -0.709325 -0.862618 0.145024 0.133404 -0.024269 G1 Tipica
287 10 DURANGO 2 CANELAS 13 3052.0 7028.345106 0.973873 -0.039345 0.035912 ... 1.278851 -1.611272 2.817671 1.210076 0.911916 -0.949324 2.176418 -0.171568 G2 Atipica en CP3
343 11 GUANAJUATO 38 TARANDACUAO 5 10228.0 1665.709526 0.985132 0.096366 0.027085 ... 1.636455 0.020676 -0.576677 -0.183315 -0.143417 -0.045608 -0.287923 0.053215 G2 Tipica
401 12 GUERRERO 66 TLALIXTAQUILLA DE MALDONADO 6 5323.0 1267.135966 0.978397 0.077967 0.023497 ... 1.215181 -0.561198 -0.034643 0.187081 0.311758 0.890900 -0.086635 0.005119 G2 Tipica
493 13 HIDALGO 12 ATOTONILCO DE TULA 9 34627.0 1937.663598 0.987539 0.097736 0.030188 ... 2.020839 0.391475 -0.517099 0.112825 -0.346416 -0.658614 -0.220578 -0.090270 G2 Tipica
644 14 JALISCO 63 MEZQUITIC 6 13993.0 3166.858601 0.973196 0.197826 0.059857 ... 7.961590 -0.748885 0.764143 0.812900 -0.365640 -0.961641 -0.959423 -0.204727 G2 Atipica en CP1
669 15 MEXICO 46 JILOTEPEC 28 66143.0 691.859501 0.989240 0.122857 0.037462 ... 3.050130 1.326581 -0.693053 1.614176 -0.167656 -1.382403 -0.582835 -0.036571 G2 Tipica
835 16 MICHOACAN 57 NAHUATZEN 1 20601.0 2450.712917 0.985485 0.120289 0.037233 ... 3.394949 -0.141877 -0.292103 -0.267104 -0.649901 -0.866159 -0.363124 -0.132488 G2 Tipica
900 17 MORELOS 9 HUITZILAC 5 15191.0 784.163345 0.982867 0.093586 0.027848 ... 1.927017 -0.223295 -0.480645 0.080409 -0.201335 0.145994 -0.122454 -0.106754 G2 Tipica
941 18 NAYARIT 4 BAHIA DE BANDERAS 7 110771.0 3465.433325 0.985425 0.099617 0.030069 ... 2.134245 0.677598 0.137811 -0.047620 -0.638247 -0.244429 -0.213242 -0.080593 G2 Tipica
953 19 NUEVO LEON 10 CARMEN 1 28495.0 2675.641052 0.981918 0.201864 0.059656 ... 7.568605 -0.378582 0.112418 0.268506 -1.163629 -1.896856 -1.167013 -0.212289 G2 Atipica en CP1
1355 20 OAXACA 329 SAN PEDRO TIDAA 0 649.0 148.056274 0.969378 0.275049 0.077157 ... 10.542495 -1.833485 0.778401 1.306839 -1.080136 -1.242038 -2.514834 0.512631 G2 Atipica en CP1
1583 21 PUEBLA 97 LA MAGDALENA TLATLAUQUITEPEC 0 437.0 549.923452 0.987756 -0.098969 0.063115 ... 3.277573 -2.724808 1.767368 1.776128 -1.803648 -4.515972 4.446742 -0.020922 G2 Atipica en CP2
1800 22 QUERETARO 10 EL MARQUES 8 126227.0 2559.107742 0.985441 0.115217 0.034710 ... 2.944501 0.681979 0.090723 0.263347 -0.933905 -0.500287 -0.364640 -0.126204 G2 Tipica
1803 23 QUINTANA ROO 9 TULUM 4 33040.0 1341.941717 0.985168 0.044512 0.020097 ... -0.102776 -0.405511 -0.069422 -0.005904 -0.233062 0.118408 0.153015 -0.026670 G1 Tipica
1835 24 SAN LUIS POTOSI 47 VILLA DE ARRIAGA 15 12671.0 1153.966906 0.988238 0.113151 0.033942 ... 2.580639 0.539245 -0.790199 0.589008 -0.165902 -1.012361 -0.450168 -0.007850 G2 Tipica
1877 25 SINALOA 8 ELOTA 33 31068.0 3491.717817 0.986226 0.119608 0.034963 ... 2.879935 1.496034 -0.246923 1.530030 0.784340 -1.108578 -0.564731 -0.052363 G2 Atipica en CP2
1910 26 SONORA 28 NACORI CHICO 2 1400.0 2105.613903 0.963629 0.169591 0.050944 ... 6.464459 -1.605797 1.147907 0.758675 0.285153 1.115217 -0.740824 0.353444 G2 Atipica en CP1
1961 27 TABASCO 16 TEAPA 13 40126.0 959.018868 0.985047 0.068630 0.020716 ... 0.457512 0.353091 -0.490061 0.421676 0.090964 0.286157 -0.019180 -0.057132 G1 Tipica
1995 28 TAMAULIPAS 14 GUERRERO 0 2421.0 466.383156 0.989060 -0.066692 0.048145 ... 1.747801 -2.101160 1.078722 1.145321 -1.433588 -3.318985 3.204294 -0.068468 G2 Atipica en CP2
2034 29 TLAXCALA 16 IXTENCO 0 5340.0 1089.473478 0.985932 0.080316 0.026840 ... 1.454561 -0.370267 -0.575032 -0.353691 -0.455542 -0.227115 0.019706 -0.094774 G2 Tipica
2272 30 VERACRUZ 107 MIAHUATLAN 1 3286.0 1538.560603 0.982124 0.136631 0.042341 ... 4.198588 -0.644741 -0.125930 0.089774 -0.599902 -0.781443 -0.672764 0.041599 G2 Tipica
2346 31 YUCATAN 45 KOPOMA 1 1983.0 984.759958 0.976657 0.190276 0.057503 ... 6.944986 -0.992839 0.128227 0.553758 -0.752894 -0.892300 -1.128084 0.307708 G2 Atipica en CP1
2455 32 ZACATECAS 11 TRINIDAD GARCIA DE LA CADENA 3 2779.0 599.387128 0.972699 0.113381 0.035958 ... 3.650324 -1.132814 0.286727 0.508656 0.063267 0.840623 -0.156614 -0.037272 G2 Tipica

32 rows × 22 columns

Animación de la proyección de los municipios en el espacio de las CP (tipología en color):

In [7]:
eti=['NOMBRE_ESTADO','NUM_SECC_RUR', 'LNE', 'Densidad_LNE', 'Razon_LNE_PE', 'TC_LNE_2019', 'Coef_Var_LNE', 'Var_Prop_LNE', 'Autocorr_LNE', 'CP1_(ICE_principal)', 'CP2_(segundo_ICE)', 'CP3_(tercer_ICE)', 'TCE_municipal', 'Atipicidad']
#3-d scatter plot con plotly
fig = px.scatter_3d(resultados_ind8, 
                    x='CP1_(ICE_principal)', 
                    y='CP2_(segundo_ICE)', 
                    z='CP3_(tercer_ICE)',
              color='TCE_municipal',
                    color_discrete_map={
                'G0':'blue',
                  'G1':'green',
                  'G2': 'orange',
                    'G3': 'grey'},
                    hover_name='NOMBRE_MUNICIPIO',
                   hover_data = eti)
fig.update_traces(mode='markers', marker_line_width=1, marker_size=3)
fig.update_layout(scene = dict(
                    xaxis_title='CP1 (ICE principal)',
                    yaxis_title='CP2 (segundo ICE)',
                    zaxis_title='CP3 (tercer ICE)'),
                  title="Proyección de los municipios en el espacio de las Componentes Principales (8 indicadores)",
                 legend_orientation="h")
fig.show()
#salvar animación en html
fig.write_html("C:/Users/miguel.alvarez/Google Drive/INFOTEC/Proyecto/Code-Data/Mun/4_Resumen-Mapas/Pyplotly_Proyeccion3d_Mun_ind8.html")

Animación de la proyección de los municipios en el espacio de las CP (atipicidad en color):

In [8]:
eti=['NOMBRE_ESTADO','NUM_SECC_RUR', 'LNE', 'Densidad_LNE', 'Razon_LNE_PE', 'TC_LNE_2019', 'Coef_Var_LNE', 'Var_Prop_LNE', 'Autocorr_LNE', 'CP1_(ICE_principal)', 'CP2_(segundo_ICE)', 'CP3_(tercer_ICE)', 'TCE_municipal', 'Atipicidad']
#3-d scatter plot con plotly
fig = px.scatter_3d(resultados_ind8, 
                    x='CP1_(ICE_principal)', 
                    y='CP2_(segundo_ICE)', 
                    z='CP3_(tercer_ICE)',
                    color='Atipicidad',
                    hover_name='NOMBRE_MUNICIPIO',
                    hover_data = eti)
fig.update_traces(mode='markers', marker_line_width=1, marker_size=3)
fig.update_layout(scene = dict(
                    xaxis_title='CP1 (ICE principal)',
                    yaxis_title='CP2 (segundo ICE)',
                    zaxis_title='CP3 (tercer ICE)'),
                  title="Proyección de los municipios en el espacio de las Componentes Principales (8 indicadores)",
                 legend_orientation="h")
fig.show()
#salvar animación en html
fig.write_html("C:/Users/miguel.alvarez/Google Drive/INFOTEC/Proyecto/Code-Data/Mun/4_Resumen-Mapas/Pyplotly_Proyeccion3d_Mun_Atip_ind8.html")


Resumen de resultados (8 indicadores previamente con transformación log)

In [9]:
#con pandas_profiling se crea una interface para visualizar un resumen del dataframe de los resultados
resultados_ind8_tf.profile_report()
Out[9]:

In [10]:
#se ordenan y obtienen los 10 municipios por nivel de complejidad (descendente en CP1) 
ranking_mun_top10_ind8_tf = resultados_ind8_tf.sort_values(by='CP1_(ICE_principal)', ascending=False).head(10)
#se guarda el ranking
ranking_mun_top10_ind8_tf.to_csv(r'Resultados_Mun_ranking-top10_ind8_tf.csv', index = None)
ranking_mun_top10_ind8_tf
Out[10]:
EDO NOMBRE_ESTADO MUN NOMBRE_MUNICIPIO NUM_SECC_RUR LNE Densidad_LNE Razon_LNE_PE TC_LNE_2019 Coef_Var_LNE ... CP1_(ICE_principal) CP2_(segundo_ICE) CP3_(tercer_ICE) CP4 CP5 CP6 CP7 CP8 TCE_municipal Atipicidad
218 8 CHIHUAHUA 66 URUACHI 10 4527.0 71935.167394 0.946017 0.239595 0.072941 ... 11.637801 -0.660723 4.869979 -2.541311 1.606395 1.006312 -1.161107 -0.173700 G3 Atipica en CP1
1355 20 OAXACA 329 SAN PEDRO TIDAA 0 649.0 148.056274 0.969378 0.275049 0.077157 ... 10.379628 -3.824748 0.416018 2.125048 -1.427291 -0.106438 -2.448141 0.496341 G3 Atipica en CP1
1384 20 OAXACA 216 SAN JUAN TABAA 0 831.0 1138.040489 0.935902 0.183761 0.065257 ... 9.961807 -4.385548 4.195001 -0.368090 3.019180 -1.173133 -0.016485 0.041330 G3 Atipica en CP1
644 14 JALISCO 63 MEZQUITIC 6 13993.0 3166.858601 0.973196 0.197826 0.059857 ... 7.973643 -0.401163 1.309536 -0.057985 -1.103593 0.166746 -0.989428 -0.199106 G3 Tipica
953 19 NUEVO LEON 10 CARMEN 1 28495.0 2675.641052 0.981918 0.201864 0.059656 ... 7.593179 0.056374 0.368511 -0.044410 -2.323962 0.073880 -1.181941 -0.201859 G3 Tipica
203 8 CHIHUAHUA 9 BOCOYNA 11 20100.0 2377.196977 0.964964 0.169693 0.052948 ... 7.039186 -0.573610 2.121125 0.140018 0.364736 -0.577107 -0.495224 -0.114093 G3 Tipica
1019 20 OAXACA 489 SANTIAGO TEPETLAPA 0 88.0 225.010554 0.965876 0.011494 0.098169 ... 6.931288 -6.996134 5.179282 1.763986 -3.845580 1.655152 1.161802 2.681768 G3 Atipica en CP2
2346 31 YUCATAN 45 KOPOMA 1 1983.0 984.759958 0.976657 0.190276 0.057503 ... 6.898187 -1.706534 0.159778 0.507240 -0.973312 0.428043 -1.150780 0.296692 G3 Tipica
1481 20 OAXACA 396 SANTA MAGDALENA JICOTLAN 0 61.0 37.305746 0.972984 0.033898 0.073513 ... 6.730604 -6.298385 1.623784 3.144654 -2.831701 1.146331 2.170915 -0.064531 G3 Atipica en CP2
263 8 CHIHUAHUA 41 MAGUARICHI 4 1179.0 10214.519198 0.952501 0.126074 0.050196 ... 6.502908 -2.046529 3.528190 -1.770254 2.221538 0.478659 0.115990 0.095602 G3 Tipica

10 rows × 22 columns

In [11]:
#se obtienen los municipios de mayor complejidad (mayor CP1) para cada una de las 32 entidades
idx_rank_mun = resultados_ind8_tf.groupby(['EDO'])['CP1_(ICE_principal)'].transform(max) == resultados_ind8_tf['CP1_(ICE_principal)']
ranking_mun_edo_tf = resultados_ind8_tf[idx_rank_mun]
ranking_mun_edo_tf.to_csv(r'Resultados_Mun_ranking-edo_ind8_tf.csv', index = None)
ranking_mun_edo_tf
Out[11]:
EDO NOMBRE_ESTADO MUN NOMBRE_MUNICIPIO NUM_SECC_RUR LNE Densidad_LNE Razon_LNE_PE TC_LNE_2019 Coef_Var_LNE ... CP1_(ICE_principal) CP2_(segundo_ICE) CP3_(tercer_ICE) CP4 CP5 CP6 CP7 CP8 TCE_municipal Atipicidad
0 1 AGUASCALIENTES 10 SAN FRANCISCO DE LOS ROMO 3 34917.0 3566.024547 0.989272 0.037498 0.015085 ... -1.123957 0.770085 0.164774 -0.915654 -0.492972 -0.317918 -0.188139 0.012307 G0 Tipica
13 2 BAJA CALIFORNIA 3 TECATE 3 85233.0 1700.546549 0.988233 -0.012604 0.017671 ... -1.881115 -0.043787 1.458186 -0.343891 -1.516557 -0.981819 0.225173 0.012780 G1 Tipica
20 3 BAJA CALIFORNIA SUR 2 MULEGE 17 40805.0 1116.921614 0.982451 0.078356 0.024389 ... 1.209591 0.774026 0.256277 0.875561 0.312942 -0.665289 0.090517 -0.011130 G2 Tipica
22 4 CAMPECHE 9 ESCARCEGA 15 40540.0 1995.116156 0.983640 0.062954 0.018421 ... 0.197625 1.103885 0.198865 0.214234 0.576649 -0.521549 0.117225 0.002901 G0 Tipica
49 5 COAHUILA 11 GENERAL CEPEDA 15 9058.0 2395.494757 0.981156 0.150514 0.041165 ... 4.262239 0.351789 0.345219 0.464093 -0.247961 0.519234 -0.929845 0.144818 G3 Tipica
70 6 COLIMA 2 COMALA 6 16735.0 2823.697865 0.987999 0.092363 0.027588 ... 1.580486 0.729822 -0.411860 -0.322751 -0.560900 0.191612 -0.247378 0.009263 G2 Tipica
188 7 CHIAPAS 67 PANTEPEC 4 7905.0 8420.363363 0.964301 0.096242 0.037119 ... 4.104178 -0.625972 2.413777 -1.595856 1.370490 -0.079328 0.249788 -0.151062 G3 Tipica
218 8 CHIHUAHUA 66 URUACHI 10 4527.0 71935.167394 0.946017 0.239595 0.072941 ... 11.637801 -0.660723 4.869979 -2.541311 1.606395 1.006312 -1.161107 -0.173700 G3 Atipica en CP1
269 9 CIUDAD DE MEXICO 12 TLALPAN 1 542015.0 5775.165641 0.988243 0.057017 0.018789 ... 0.077023 2.278700 0.072199 -1.342831 -0.714401 -1.395975 0.286709 0.028875 G0 Tipica
287 10 DURANGO 2 CANELAS 13 3052.0 7028.345106 0.973873 -0.039345 0.035912 ... 1.257560 -1.151292 3.469601 -0.791235 -0.388831 1.397489 2.024941 -0.182568 G3 Tipica
343 11 GUANAJUATO 38 TARANDACUAO 5 10228.0 1665.709526 0.985132 0.096366 0.027085 ... 1.642257 0.125101 -0.481777 -0.052278 -0.108416 -0.055628 -0.282931 0.054606 G2 Tipica
401 12 GUERRERO 66 TLALIXTAQUILLA DE MALDONADO 6 5323.0 1267.135966 0.978397 0.077967 0.023497 ... 1.193568 -0.655482 0.166009 0.002397 0.884792 -0.287720 -0.062848 0.005780 G2 Tipica
493 13 HIDALGO 12 ATOTONILCO DE TULA 9 34627.0 1937.663598 0.987539 0.097736 0.030188 ... 2.054783 0.860993 -0.221793 0.200437 -0.827835 -0.176910 -0.203567 -0.080763 G2 Tipica
644 14 JALISCO 63 MEZQUITIC 6 13993.0 3166.858601 0.973196 0.197826 0.059857 ... 7.973643 -0.401163 1.309536 -0.057985 -1.103593 0.166746 -0.989428 -0.199106 G3 Tipica
669 15 MEXICO 46 JILOTEPEC 28 66143.0 691.859501 0.989240 0.122857 0.037462 ... 3.078595 1.365384 0.048936 2.320068 -1.231163 -0.110748 -0.524233 -0.031932 G2 Tipica
835 16 MICHOACAN 57 NAHUATZEN 1 20601.0 2450.712917 0.985485 0.120289 0.037233 ... 3.416596 0.281362 -0.203097 -0.363145 -1.165733 -0.053973 -0.368407 -0.124077 G2 Atipica en CP1
900 17 MORELOS 9 HUITZILAC 5 15191.0 784.163345 0.982867 0.093586 0.027848 ... 1.902372 -0.259644 -0.387290 0.508796 -0.106464 -0.668998 -0.049346 -0.097660 G2 Tipica
941 18 NAYARIT 4 BAHIA DE BANDERAS 7 110771.0 3465.433325 0.985425 0.099617 0.030069 ... 2.213891 1.419923 0.212512 -0.413509 -0.769060 -0.639149 -0.179747 -0.058316 G2 Tipica
953 19 NUEVO LEON 10 CARMEN 1 28495.0 2675.641052 0.981918 0.201864 0.059656 ... 7.593179 0.056374 0.368511 -0.044410 -2.323962 0.073880 -1.181941 -0.201859 G3 Tipica
1355 20 OAXACA 329 SAN PEDRO TIDAA 0 649.0 148.056274 0.969378 0.275049 0.077157 ... 10.379628 -3.824748 0.416018 2.125048 -1.427291 -0.106438 -2.448141 0.496341 G3 Atipica en CP1
1583 21 PUEBLA 97 LA MAGDALENA TLATLAUQUITEPEC 0 437.0 549.923452 0.987756 -0.098969 0.063115 ... 3.164342 -3.652522 2.022341 1.145206 -4.452368 2.394517 4.297153 -0.049151 G3 Tipica
1800 22 QUERETARO 10 EL MARQUES 8 126227.0 2559.107742 0.985441 0.115217 0.034710 ... 3.024458 1.305285 0.221674 -0.021303 -1.124476 -0.710299 -0.315621 -0.102789 G2 Tipica
1802 23 QUINTANA ROO 8 SOLIDARIDAD 5 221280.0 5328.615653 0.987936 0.043129 0.019861 ... -0.098740 1.801837 0.508721 -1.030179 -0.774304 -0.846682 0.305022 -0.020222 G0 Tipica
1835 24 SAN LUIS POTOSI 47 VILLA DE ARRIAGA 15 12671.0 1153.966906 0.988238 0.113151 0.033942 ... 2.587624 0.481567 -0.402037 1.043622 -0.823093 0.337690 -0.453218 -0.012784 G2 Tipica
1877 25 SINALOA 8 ELOTA 33 31068.0 3491.717817 0.986226 0.119608 0.034963 ... 2.950680 1.976092 0.817152 1.266360 -0.363226 0.934955 -0.631756 -0.060972 G2 Tipica
1910 26 SONORA 28 NACORI CHICO 2 1400.0 2105.613903 0.963629 0.169591 0.050944 ... 6.429257 -2.012731 1.464448 -0.432265 1.134047 0.099137 -0.770699 0.346960 G3 Tipica
1961 27 TABASCO 16 TEAPA 13 40126.0 959.018868 0.985047 0.068630 0.020716 ... 0.467103 0.659886 -0.121739 0.736417 0.111508 -0.792179 0.063697 -0.042995 G2 Tipica
1995 28 TAMAULIPAS 14 GUERRERO 0 2421.0 466.383156 0.989060 -0.066692 0.048145 ... 1.649548 -2.563347 1.259519 1.040328 -3.520281 1.087029 3.158743 -0.077396 G2 Atipica en CP2
2034 29 TLAXCALA 16 IXTENCO 0 5340.0 1089.473478 0.985932 0.080316 0.026840 ... 1.430553 -0.594203 -0.725663 -0.008282 -0.386081 -0.016373 0.029910 -0.096583 G2 Tipica
2272 30 VERACRUZ 107 MIAHUATLAN 1 3286.0 1538.560603 0.982124 0.136631 0.042341 ... 4.179238 -0.949749 -0.112446 0.003283 -0.842011 0.456540 -0.709204 0.033631 G3 Tipica
2346 31 YUCATAN 45 KOPOMA 1 1983.0 984.759958 0.976657 0.190276 0.057503 ... 6.898187 -1.706534 0.159778 0.507240 -0.973312 0.428043 -1.150780 0.296692 G3 Tipica
2455 32 ZACATECAS 11 TRINIDAD GARCIA DE LA CADENA 3 2779.0 599.387128 0.972699 0.113381 0.035958 ... 3.580262 -1.780109 0.340235 0.526569 0.719428 -0.483072 -0.099760 -0.038375 G3 Tipica

32 rows × 22 columns

Animación de la proyección de los municipios en el espacio de las CP (tipología en color):

In [12]:
eti=['NOMBRE_ESTADO','NUM_SECC_RUR', 'LNE', 'Densidad_LNE', 'Razon_LNE_PE', 'TC_LNE_2019', 'Coef_Var_LNE', 'Var_Prop_LNE', 'Autocorr_LNE', 'CP1_(ICE_principal)', 'CP2_(segundo_ICE)', 'CP3_(tercer_ICE)', 'TCE_municipal', 'Atipicidad']
#3-d scatter plot con plotly
fig = px.scatter_3d(resultados_ind8_tf, 
                    x='CP1_(ICE_principal)', 
                    y='CP2_(segundo_ICE)', 
                    z='CP3_(tercer_ICE)',
              color='TCE_municipal',
                    color_discrete_map={
                'G0':'blue',
                  'G1':'green',
                  'G2': 'orange',
                    'G3': 'grey'},
                    hover_name='NOMBRE_MUNICIPIO',
                   hover_data = eti)
fig.update_traces(mode='markers', marker_line_width=1, marker_size=3)
fig.update_layout(scene = dict(
                    xaxis_title='CP1 (ICE principal)',
                    yaxis_title='CP2 (segundo ICE)',
                    zaxis_title='CP3 (tercer ICE)'),
                  title="Proyección de los municipios en el espacio de las Componentes Principales (8 indicadores con transformación log)",
                 legend_orientation="h")
fig.show()
#salvar animación en html
fig.write_html("C:/Users/miguel.alvarez/Google Drive/INFOTEC/Proyecto/Code-Data/Mun/4_Resumen-Mapas/Pyplotly_Proyeccion3d_Mun_ind8_tf.html")

Animación de la proyección de los municipios en el espacio de las CP (atipicidad en color):

In [13]:
eti=['NOMBRE_ESTADO','NUM_SECC_RUR', 'LNE', 'Densidad_LNE', 'Razon_LNE_PE', 'TC_LNE_2019', 'Coef_Var_LNE', 'Var_Prop_LNE', 'Autocorr_LNE', 'CP1_(ICE_principal)', 'CP2_(segundo_ICE)', 'CP3_(tercer_ICE)', 'TCE_municipal', 'Atipicidad']
#3-d scatter plot con plotly
fig = px.scatter_3d(resultados_ind8_tf, 
                    x='CP1_(ICE_principal)', 
                    y='CP2_(segundo_ICE)', 
                    z='CP3_(tercer_ICE)',
                    color='Atipicidad',
                    hover_name='NOMBRE_MUNICIPIO',
                    hover_data = eti)
fig.update_traces(mode='markers', marker_line_width=1, marker_size=3)
fig.update_layout(scene = dict(
                    xaxis_title='CP1 (ICE principal)',
                    yaxis_title='CP2 (segundo ICE)',
                    zaxis_title='CP3 (tercer ICE)'),
                  title="Proyección de los municipios en el espacio de las Componentes Principales (8 indicadores con transformación log)",
                 legend_orientation="h")
fig.show()
#salvar animación en html
fig.write_html("C:/Users/miguel.alvarez/Google Drive/INFOTEC/Proyecto/Code-Data/Mun/4_Resumen-Mapas/Pyplotly_Proyeccion3d_Mun_Atip_ind8_tf.html")


Mapas

In [14]:
import geopandas as gpd

#se carga la cartografía se municipios (shapefile)
fp = "C:/Users/miguel.alvarez/Google Drive/Cartografias/Cartografia INE/municipio.shp"
mapa_mun = gpd.read_file(fp)
#type(mapa_mun)
#mapa_mun
In [15]:
#se cambia la columna id con la concatenación de entidad+municipio
mapa_mun["id"] = mapa_mun["entidad"].astype(str) + mapa_mun["municipio"].astype(str)
mapa_mun
Out[15]:
gid id entidad municipio nombre padron lnominal geometry
0 26237 20246 20 246 SAN MATEO CAJONOS 442 434 POLYGON ((-96.20930 17.17679, -96.20832 17.176...
1 26008 1693 16 93 TIQUICHEO DE NICOLAS ROMERO 10078 9986 POLYGON ((-100.99616 19.35860, -100.99496 19.3...
2 26009 1694 16 94 TLALPUJAHUA 19592 19464 POLYGON ((-100.20480 19.86997, -100.20440 19.8...
3 26010 1695 16 95 TLAZAZALCA 7961 7857 POLYGON ((-102.13541 20.10089, -102.13356 20.1...
4 26030 16103 16 103 URUAPAN 240661 239144 POLYGON ((-102.12733 19.62702, -102.12708 19.6...
... ... ... ... ... ... ... ... ...
2453 27582 3245 32 45 TEPECHITLAN 7061 6994 POLYGON ((-103.42536 21.72844, -103.42445 21.7...
2454 27583 3214 32 14 GENERAL FRANCISCO R. MURGUIA 17495 17320 POLYGON ((-102.96496 24.45706, -102.95228 24.4...
2455 27584 3244 32 44 TABASCO 12599 12526 POLYGON ((-102.94001 22.06462, -102.93933 22.0...
2456 27575 329 32 9 CHALCHIHUITES 8469 8392 POLYGON ((-103.89917 23.61221, -103.89756 23.6...
2457 27576 3211 32 11 TRINIDAD GARCIA DE LA CADENA 2852 2821 POLYGON ((-103.43911 21.32618, -103.43782 21.3...

2458 rows × 8 columns

In [16]:
#muestra de la cartografía de municipios
plt.rcParams['figure.figsize'] = [50, 70]
mapa_mun.plot(edgecolor='black')
Out[16]:
<matplotlib.axes._subplots.AxesSubplot at 0x1be46b729e8>
In [17]:
#se guarda shapefile en geojson
mapa_mun.to_file("municipios.geojson", driver='GeoJSON')
In [18]:
#se carga la cartografía de estados (shapefile)
fp2 = "C:/Users/miguel.alvarez/Google Drive/Cartografias/Cartografia INE/entidad.shp"
mapa_edo = gpd.read_file(fp2)
#type(mapa_edo)
mapa_edo["id"] = mapa_edo["entidad"].astype(str)
mapa_edo.head()
Out[18]:
gid id entidad nombre circunscri crc padron lnominal geometry
0 129 1 1 AGUASCALIENTES 2 1 947129 939109 POLYGON ((-102.29831 22.45985, -102.29599 22.4...
1 130 2 2 BAJA CALIFORNIA 1 8 2745326 2717857 MULTIPOLYGON (((-114.71429 32.72202, -114.7191...
2 131 3 3 BAJA CALIFORNIA SUR 1 4 519170 514223 MULTIPOLYGON (((-112.08233 25.34398, -112.0822...
3 132 4 4 CAMPECHE 3 10 644487 637005 MULTIPOLYGON (((-91.93864 21.23621, -91.93901 ...
4 133 5 5 COAHUILA 2 11 2163696 2140471 POLYGON ((-102.31629 29.87767, -102.31551 29.8...
In [19]:
#muestra de la cartografía de estados
plt.rcParams['figure.figsize'] = [50, 70]
mapa_edo.plot(edgecolor='black')
Out[19]:
<matplotlib.axes._subplots.AxesSubplot at 0x1be46af9da0>


Mapas de tipología y atipicidad (8 indicadores)

In [20]:
#se agrega una column id a resultados_ind8
resultados_ind8["id"] = resultados_ind8["EDO"].astype(str) + resultados_ind8["MUN"].astype(str)
#se une con mapa_mun
mapa_mun_ind8 = mapa_mun.merge(resultados_ind8, how='inner',on=['id'])
mapa_mun_ind8.head()
Out[20]:
gid id entidad municipio nombre padron lnominal geometry EDO NOMBRE_ESTADO ... CP1_(ICE_principal) CP2_(segundo_ICE) CP3_(tercer_ICE) CP4 CP5 CP6 CP7 CP8 TCE_municipal Atipicidad
0 26237 20246 20 246 SAN MATEO CAJONOS 442 434 POLYGON ((-96.20930 17.17679, -96.20832 17.176... 20 OAXACA ... 0.855140 -0.952114 -0.054486 -0.065220 -0.106497 0.488439 0.577172 -0.025489 G2 Tipica
1 26008 1693 16 93 TIQUICHEO DE NICOLAS ROMERO 10078 9986 POLYGON ((-100.99616 19.35860, -100.99496 19.3... 16 MICHOACAN ... -1.409344 0.336561 -0.727215 -0.159453 0.219598 0.091372 0.183717 0.026308 G1 Tipica
2 26009 1694 16 94 TLALPUJAHUA 19592 19464 POLYGON ((-100.20480 19.86997, -100.20440 19.8... 16 MICHOACAN ... -1.114369 0.516483 -0.837351 0.093192 0.353598 0.501185 0.303477 0.028327 G1 Tipica
3 26010 1695 16 95 TLAZAZALCA 7961 7857 POLYGON ((-102.13541 20.10089, -102.13356 20.1... 16 MICHOACAN ... -1.203593 -0.080670 -0.810199 -0.492116 0.066812 0.775575 0.464684 -0.001929 G1 Tipica
4 26030 16103 16 103 URUAPAN 240661 239144 POLYGON ((-102.12733 19.62702, -102.12708 19.6... 16 MICHOACAN ... 0.109687 1.750537 0.195250 0.129237 -1.344235 0.071466 0.040200 -0.022199 G1 Tipica

5 rows × 30 columns

In [21]:
#mapa tipología
base = mapa_edo.plot(facecolor="none", edgecolor='black')
mapa_mun_ind8.plot(ax=base,
                   column='TCE_municipal', 
                   categorical=True,
                   edgecolor='white',
                   legend=True)
Out[21]:
<matplotlib.axes._subplots.AxesSubplot at 0x1be475e1e48>
In [22]:
#mapa municipios atípicos
base = mapa_edo.plot(facecolor="none", edgecolor='black')
mapa_mun_ind8.plot(ax=base,
                   column='Atipicidad', 
                   categorical=True,
                   edgecolor='white',
                   legend=True)
Out[22]:
<matplotlib.axes._subplots.AxesSubplot at 0x1be476055f8>
In [23]:
import json
with open('C:/Users/miguel.alvarez/Google Drive/INFOTEC/Proyecto/Code-Data/Mun/4_Resumen-Mapas/municipios.geojson') as f:
    municipios_s = json.load(f)

#print(municipios_s["features"][0])
#print(municipios_s["features"][0]["properties"])
#municipios_s
In [24]:
import plotly
#mapa de TCE
eti=['NOMBRE_ESTADO','NUM_SECC_RUR', 'LNE', 'Densidad_LNE', 'Razon_LNE_PE', 'TC_LNE_2019', 'Coef_Var_LNE', 'Var_Prop_LNE', 'Autocorr_LNE', 'CP1_(ICE_principal)', 'CP2_(segundo_ICE)', 'CP3_(tercer_ICE)', 'TCE_municipal', 'Atipicidad']
fig = px.choropleth(resultados_ind8, geojson=municipios_s, 
                    locations='id', featureidkey="properties.id",
                    color='TCE_municipal',
                    color_discrete_map={
                    'G0':'blue',
                    'G1':'green',
                    'G2': 'orange',
                    'G3': 'grey'},
                    hover_name='NOMBRE_MUNICIPIO',
                    hover_data = eti,
                    title = 'TCE municipal (8 indicadores)')
fig.update_geos(fitbounds="locations",
                visible=False,
                showcountries=True, 
                countrycolor="Black", showsubunits=True, 
                subunitcolor="Blue")
fig.show()
fig.write_html("C:/Users/miguel.alvarez/Google Drive/INFOTEC/Proyecto/Code-Data/Mun/4_Resumen-Mapas/Pyplotly_Mapa_Mun_ind8.html")
In [25]:
import plotly
#mapa de atipicidad
eti=['NOMBRE_ESTADO','NUM_SECC_RUR', 'LNE', 'Densidad_LNE', 'Razon_LNE_PE', 'TC_LNE_2019', 'Coef_Var_LNE', 'Var_Prop_LNE', 'Autocorr_LNE', 'CP1_(ICE_principal)', 'CP2_(segundo_ICE)', 'CP3_(tercer_ICE)', 'TCE_municipal', 'Atipicidad']
fig = px.choropleth(resultados_ind8, geojson=municipios_s, 
                    locations='id', featureidkey="properties.id",
                    color='Atipicidad',
                    color_discrete_sequence= px.colors.sequential.Reds,
                    hover_name='NOMBRE_MUNICIPIO',
                    hover_data = eti,
                    title = 'Mapa municipios atípicos (8 indicadores)')
fig.update_geos(fitbounds="locations",
                visible=True,
                showcountries=True, 
                countrycolor="Black", 
                showsubunits=True, 
                subunitcolor="Blue")
fig.show()
fig.write_html("C:/Users/miguel.alvarez/Google Drive/INFOTEC/Proyecto/Code-Data/Mun/4_Resumen-Mapas/Pyplotly_Mapa_Mun_Atip_ind8.html")


Mapas de tipología y atipicidad (8 indicadores con previa transformación log)

In [26]:
#se agrega una column id a resultados_ind8
resultados_ind8_tf["id"] = resultados_ind8_tf["EDO"].astype(str) + resultados_ind8_tf["MUN"].astype(str)
#se une con mapa_mun
mapa_mun_ind8_tf = mapa_mun.merge(resultados_ind8_tf, how='inner',on=['id'])
mapa_mun_ind8_tf.head()
Out[26]:
gid id entidad municipio nombre padron lnominal geometry EDO NOMBRE_ESTADO ... CP1_(ICE_principal) CP2_(segundo_ICE) CP3_(tercer_ICE) CP4 CP5 CP6 CP7 CP8 TCE_municipal Atipicidad
0 26237 20246 20 246 SAN MATEO CAJONOS 442 434 POLYGON ((-96.20930 17.17679, -96.20832 17.176... 20 OAXACA ... 0.787339 -2.092843 -0.415892 0.046963 0.690197 0.681536 0.534608 -0.048895 G2 Tipica
1 26008 1693 16 93 TIQUICHEO DE NICOLAS ROMERO 10078 9986 POLYGON ((-100.99616 19.35860, -100.99496 19.3... 16 MICHOACAN ... -1.397431 0.512956 -0.556422 0.054239 0.239874 0.125582 0.177385 0.024092 G0 Tipica
2 26009 1694 16 94 TLALPUJAHUA 19592 19464 POLYGON ((-100.20480 19.86997, -100.20440 19.8... 16 MICHOACAN ... -1.109241 0.683770 -0.575890 0.561885 0.552167 -0.435879 0.356803 0.033713 G0 Tipica
3 26010 1695 16 95 TLAZAZALCA 7961 7857 POLYGON ((-102.13541 20.10089, -102.13356 20.1... 16 MICHOACAN ... -1.232637 -0.257317 -0.976240 0.113375 0.651502 -0.528106 0.523231 0.001096 G1 Tipica
4 26030 16103 16 103 URUAPAN 240661 239144 POLYGON ((-102.12733 19.62702, -102.12708 19.6... 16 MICHOACAN ... 0.249072 2.148094 -0.127324 -0.143278 -0.757696 -0.854998 0.097483 0.003641 G0 Tipica

5 rows × 30 columns

In [27]:
#mapa tipología
base = mapa_edo.plot(facecolor="none", edgecolor='black')
mapa_mun_ind8_tf.plot(ax=base,
                   column='TCE_municipal', 
                   categorical=True,
                   edgecolor='white',
                   legend=True)
Out[27]:
<matplotlib.axes._subplots.AxesSubplot at 0x1be49464438>
In [28]:
#mapa municipios atípicos
base = mapa_edo.plot(facecolor="none", edgecolor='black')
mapa_mun_ind8_tf.plot(ax=base,
                   column='Atipicidad', 
                   categorical=True,
                   edgecolor='white',
                   legend=True)
Out[28]:
<matplotlib.axes._subplots.AxesSubplot at 0x1be49198940>
In [29]:
import plotly
#mapa de TCE
eti=['NOMBRE_ESTADO','NUM_SECC_RUR', 'LNE', 'Densidad_LNE', 'Razon_LNE_PE', 'TC_LNE_2019', 'Coef_Var_LNE', 'Var_Prop_LNE', 'Autocorr_LNE', 'CP1_(ICE_principal)', 'CP2_(segundo_ICE)', 'CP3_(tercer_ICE)', 'TCE_municipal', 'Atipicidad']
fig = px.choropleth(resultados_ind8_tf, geojson=municipios_s, 
                    locations='id', featureidkey="properties.id",
                    color='TCE_municipal',
                    color_discrete_map={
                    'G0':'blue',
                    'G1':'green',
                    'G2': 'orange',
                    'G3': 'grey'},
                    hover_name='NOMBRE_MUNICIPIO',
                    hover_data = eti,
                    title = 'TCE municipal (8 indicadores con transformación log)')
fig.update_geos(fitbounds="locations",
                visible=False,
                showcountries=True, 
                countrycolor="Black", showsubunits=True, 
                subunitcolor="Blue")
fig.show()
fig.write_html("C:/Users/miguel.alvarez/Google Drive/INFOTEC/Proyecto/Code-Data/Mun/4_Resumen-Mapas/Pyplotly_Mapa_Mun_ind8_tf.html")
In [30]:
import plotly
#mapa de atipicidad
eti=['NOMBRE_ESTADO','NUM_SECC_RUR', 'LNE', 'Densidad_LNE', 'Razon_LNE_PE', 'TC_LNE_2019', 'Coef_Var_LNE', 'Var_Prop_LNE', 'Autocorr_LNE', 'CP1_(ICE_principal)', 'CP2_(segundo_ICE)', 'CP3_(tercer_ICE)', 'TCE_municipal', 'Atipicidad']
fig = px.choropleth(resultados_ind8_tf, geojson=municipios_s, 
                    locations='id', featureidkey="properties.id",
                    color='Atipicidad',
                    color_discrete_sequence= px.colors.sequential.Reds,
                    hover_name='NOMBRE_MUNICIPIO',
                    hover_data = eti,
                    title = 'Mapa municipios atípicos (8 indicadores con transformación log)')
fig.update_geos(fitbounds="locations",
                visible=False,
                showcountries=True, 
                countrycolor="Black", 
                showsubunits=True, 
                subunitcolor="Blue")
fig.show()
fig.write_html("C:/Users/miguel.alvarez/Google Drive/INFOTEC/Proyecto/Code-Data/Mun/4_Resumen-Mapas/Pyplotly_Mapa_Mun_Atip_ind8_tf.html")
In [ ]: